1
流是 Ruby I/O 的基礎
AI035Lesson 6
00:00

在 Ruby 中,輸入/輸出不僅僅是一組指令;它是一種複雜的 基於流的架構。此系統的核心是 IO 類別,它作為一個 雙向通道 在您的程式與外部世界之間。無論您是在與檔案、網路插座或使用者終端機互動,Ruby 都將它們視為通用的資料流。

1. 雙向橋樑

一個 IO 物件是一種統一的抽象。雖然作業系統會區分 檔案描述符 用於讀取和寫入(例如在管道中),Ruby 會將這些封裝成單一物件。這允許資料在兩個方向上無縫流動。

Ruby 程式資源IO 物件

2. 核心模組與標準過濾器

這個 核心 模組提供像 getsprint。這些基本上是 過濾器 ,它們會委派給全域常數 STDINSTDOUT。這表示您的程式碼可以在作業系統層級被重新導向,以處理檔案或網路資料流,而無需更改任何一行邏輯。

$$\text{資料流} \rightarrow \text{緩衝區} \rightarrow \text{Ruby 解譯器}$$

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>